package top.ddandang.blog.service;

import top.ddandang.blog.model.pojo.Draft;
import com.baomidou.mybatisplus.extension.service.IService;
import top.ddandang.blog.model.vo.DraftVo;

import java.util.List;

/**
 * <p>
 *  服务类
 * </p>
 *
 * @author D
 * @since 2020-06-26
 */
public interface DraftService extends IService<Draft> {

    /**
     * 保存草稿箱
     * @param draftVo 接受前端的参数，草稿实体类
     * @return 草稿箱的id
     */
    int insertDraft(DraftVo draftVo);

    /**
     * 更新草稿箱
     * @param draftVo 接受前端的参数，草稿实体类
     */
    void updateDraft(DraftVo draftVo);

    /**
     * 通过id获取草稿箱
     * @param id 草稿箱Id
     * @return 草稿箱信息
     */
    Draft getDraftById(Integer id);

    /**
     * 获取全部的草稿
     * @return 草稿集合
     */
    List<Draft> listDraft();

    /**
     * 删除草稿箱（逻辑删除）
     * @param id 草稿Id
     */
    void deleteDraft(Integer id);

    /**
     * 查看草稿箱中是否有这个文章 如果有则直接替换没有则增加新的草稿箱
     * @param articleId 文章id
     * @return 草稿箱id
     */
    int judgeDraft(Integer articleId);

}
